Week 2: Algorithm Analysis

Worst / Average / Best case

Recurrence relations

Mathematical analysis

Week 3: Divide and Conquer

Divide-and-conquer paradigm

Merge Sort

Quick Sort

Week 4: Advanced Sorting and Selection

Heap Sort

Counting Sort

Selection algorithms

Radix Sort

Week 5: Greedy Algorithms

Greedy strategy

Huffman coding

Interval scheduling

Minimum spanning tree

Week 6: Dynamic Programming I

DP fundamentals

Memoization vs tabulation

Fibonacci

Coin change

Knapsack

Week 7: Dynamic Programming II

Longest Common Subsequence

Matrix chain multiplication

Week 8: Midterm Exam

Midterm Coverage Weeks 1–7

Exam Format : Multiple choice, Complexity analysis, Algorithm design, Short proofs

Week 9: Graph Algorithms I

Graph representations

BFS

DFS

Week 10: Graph Algorithms II

Dijkstra

Bellman-Ford

Floyd-Warshall

Shortest paths

Week 11: Minimum Spanning Trees

Prim’s algorithm

Kruskal’s algorithm

Union-Find

Week 12: NP-Completeness

P vs NP

Polynomial reductions

SAT

Traveling Salesman Problem

Computational hardness

Week 13: Approximation Algorithms

Approximation ratio

Vertex cover

TSP approximations

Week 14: Randomized Algorithms

Randomization techniques

Las Vegas vs Monte Carlo

Randomized QuickSort

Week 15: Advanced Topics & Project Presentation

AI search algorithms

Game pathfinding

Parallel algorithms

String matching

Machine learning optimization

Week 16: Final Exam

Algorithm design

Proofs

DP

Graph algorithms

NP-completeness